home *** CD-ROM | disk | FTP | other *** search
/ Loadstar 235 / 235.d81 / time subway (.txt) < prev    next >
Commodore BASIC  |  2022-08-26  |  13KB  |  296 lines

  1. 10 poke56,62:clr:poke53280,.:poke53281,.:printchr$(8)chr$(142):x=rnd(ti)
  2. 20 poke53248+21,255:poke53248+21,.:sys65418:gosub1010:pl=49847:a=52224:b=52480
  3. 30 forx=atob:readd:pokex,d:next:a=49152:b=49970:forx=atob:readd:pokex,d:next
  4. 40 a=248*64:b=a+7*64:forx=atob:readd:pokex,d:next
  5. 50 print"[154]based on a concept by lynwood brooks"
  6. 60 forx=.to63:poke832+x,.:poke896+x,255:poke960+x,255:next:poke864,16
  7. 70 forx=2to63step3:poke896+x,.:next:poke864,16:poke867,16
  8. 80 print"[152]programmed by cleveland m. blakemore";:syspl,.,16:gosub1100
  9. 90 print"[152][213][195][201][157][157][157][194] [194][157][157][157][202][195][203]":printtab(32)"[145][145][145][213][195][201][157][157][157][194] [194][157][157][157][202][195][203]"
  10. 100 syspl,10,9:print"[154]press fire to begin"
  11. 110 a$(.)="[194]":a$(1)="[206]":a$(2)="[195]":a$(3)="[205]":x=.
  12. 120 sys52224,1,16,21:print""tab(4)a$(x)tab(33)a$(x):x=x+1+(x=3)*4
  13. 130 on-((peek(56320)and16)>.)goto120:print"[147]"
  14. 140 dim v,p,y,j,r,u,e,d,h,w,i,l,sp,n,lx,ly,g,m,s,s$(47),d(1),t(47),sc(3)
  15. 150 v=53248:j=56320:sc=52224:m=1988:s=54272:d(.)=-1:d(1)=1:n=209:u=1:e=2:g=4
  16. 160 h=64:l=100:lx=172:ly=200:i=.025:sp=1337
  17. 170 forx=.to3:readsc(x):next:reada$(.),a$(1)
  18. 180 forx=1to45:readt(x),s$(x):next
  19. 190 xs=49634:ys=49647:tg=49660:fl=49673:cf=49692:md=49711:ss=49755:sb=49774
  20. 200 deffnf(x)=-((peek(j)and16)>.):deffnm(x)=(peek(v+21)and16)=.
  21. 210 deffnp(x)=peek(v+16)and239
  22. 220 sys49805,255,.
  23. 230 sysxs,41,21:sysys,123,214:systg,6,14:sysfl,0,0,0:syscf,16,31,14:sysss,4,3
  24. 240 poke2040,248:poke2044,13:poke2045,14:poke2046,15:poke2047,248
  25. 250 pokev+28,143:pokev+37,1:pokev+38,11:pokev+39,10:pokev+43,1
  26. 260 pokev+44,.:pokev+45,.:pokev+46,9:pokev+10,160:pokev+11,115
  27. 270 pokev+12,160:pokev+13,103:pokev+14,172:pokev+15,200:pokev+23,32:pokev+29,96
  28. 280 y=m:d=.:w=.:gosub990
  29. 290 gosub1170:gosub1260:gosub1390
  30. 300 p=129:a$="99599592":gosub1420
  31. 310 pokev+16,.:pokev+10,168:pokev+11,115:pokev,172:pokev+1,87
  32. 320 pokev+21,33:pokev+27,223:gosub1300:pokev+27,222:gosub1370:gosub1320
  33. 330 x=(y=t(hx)):pokev+21,65+(x<>.)*-128+(x=.)*-14:r=(x=.)*-.8
  34. 340 fora=.to9:a=peek(v+30):a=peek(v+31):next:sysfl,0,1,1:sys49152
  35. 350 p=129:a$="111455808101101101101101101":gosub1420:fora=.to3:sysss,a,1:next
  36. 360 rem main loop for subway platform
  37. 370 syssc,d,e,7:ifrnd(u)>rthensysmd,rnd(u)*4+u,rnd(u)*8+u
  38. 380 ifxtheniffnm(.)thenpokev+16,fnp(.):pokev+8,lx:pokev+9,ly:pokev+21,n
  39. 390 w=w+i:a=peek(v+30):b=peek(v+31):ifw>lor((aandu)=uand(aandh)=.)then410
  40. 400 onfnf(.)goto370:on((bandu)=u)*-u+(a=h+u)*-egoto550,820:goto370
  41. 410 forx=.to3:sysss,x,.:next:pokes+6,96:pokes+24,15:pokes+4,33
  42. 420 forx=.to255step5:pokes,x:pokes+1,255-x:next:pokes+4,32
  43. 430 forx=.to96:pokev+32,xand15:next
  44. 440 on-(a=129ora=145)goto510:on-(w<l)goto540:syspl,9,9:poke198,.
  45. 450 rem time distortion reaches 100%
  46. 460 print"time distortion 100% !!"
  47. 470 p=33:ford=.to4:a$="121205":gosub1420:next
  48. 480 printtab(12)"play again (y/n)[154]"
  49. 490 wait198,1:geta$:ifa$="y"thenrun
  50. 500 poke679,.:sys679
  51. 510 rem found doctor
  52. 520 print"[147]":syspl,2,9:print"[150]you have stopped the crazed doctor!!"
  53. 530 poke198,.:p=33:ford=.to2:a$="251331421502421502":gosub1420:next:goto470
  54. 540 gosub990:y=int(rnd(u)*m)+u:syscf,16,30,14:pokev+17,11:goto880
  55. 550 forx=.to3:sysss,x,.:next:pokev+21,.
  56. 560 print"[147][158][176]";:forx=.to35:print"[195]";:next:print"[174]"
  57. 570 forx=.to20:printtab(1)"[194]"tab(38)"[194]":next
  58. 580 print"[173]";:forx=.to35:print"[195]";:next:print"[189]"
  59. 590 syspl,7,22:print"[152]time distortion factor:";:gosub960:print"%"
  60. 600 syspl,2,2:print"[158] space-time continuum subway system ":syspl,10,4
  61. 610 print"station: ";:a$=str$(y):gosub940:print" a.d.":x=fre(.)
  62. 620 p=33:a$="081112113211":gosub1420
  63. 630 a=.:forx=1to45:ify=t(x)thena=x
  64. 640 next:ifa=.then670
  65. 650 syspl,3,6:print"[155]significant event this time frame:"
  66. 660 syspl,20-(len(s$(a))/2),8:print""s$(a):goto680
  67. 670 syspl,2,6:print"[151]no significant event at this station"
  68. 680 syspl,2,10:print"[150]there is a human presence registered"
  69. 690 syspl,7,11:print"in the vicinity of the era"
  70. 700 syspl,9,12:print"marked by the event..."
  71. 710 p=17:a$="401401401401":gosub1420
  72. 720 printtab(20-(len(s$(hx))/2))""s$(hx):a$=str$(t(hx)):printtab(15)"[152]";
  73. 730 gosub940:print" a.d."
  74. 740 syspl,8,17:print""a$(.):syspl,32,17:printa$(1)
  75. 750 syspl,15,18:print"[152]s u b w a y":syspl,15,19:print"[155]m o t i o n"
  76. 760 a=usr(.)
  77. 770 ifa=3thend=1:syspl,32,17:print"[150]"a$(1):syspl,8,17:print""a$(.)
  78. 780 ifa=7thend=.:syspl,32,17:print""a$(1):syspl,8,17:print"[150]"a$(.)
  79. 790 ifa=3ora=7thenp=33:a$="991":gosub1420
  80. 800 on-((peek(j)and16)>.)goto760:p=17:a$="424242":gosub1420:gosub1170:goto330
  81. 810 rem subway time travel
  82. 820 sysfl,0,1,0:pokev,172:pokev+1,124:p=33:a$="50":gosub1420
  83. 830 syssc,d,2,7:fora=.to20:next:ifpeek(sp)<>186orpeek(sp+u)<>210then830
  84. 840 gosub1390
  85. 850 pokev+21,peek(v+21)or32:gosub1300:gosub1340:pokev+27,peek(v+27)or1
  86. 860 gosub1320:pokev+21,peek(v+21)and254
  87. 870 forx=90to10step-1:syssc,d,2,7:forb=.tox:next:next:pokev+17,11
  88. 880 pokev+21,.:print"[147][151]";:fora=.to3:gosub1230:gosub1240:next:print:gosub1100
  89. 890 print"[151]";:fora=.to3:gosub1230:gosub1240:next:pokev+17,27:a=9:b=14
  90. 900 syssc,d,a,b:y=y+d(d)+(y=mandd=u)*(m+u)+(y=.andd=.)*-(m+u):a$=str$(y)
  91. 910 w=w+i:on-(w>l)goto440:print""tab(17)"";:gosub940:onfnf(.)goto900
  92. 920 goto290
  93. 930 rem right justified year
  94. 940 printright$("    "+(right$(a$,len(a$)-u)),g);:x=fre(.):return
  95. 950 rem right justified time distortion
  96. 960 a$=str$(int(w)):printright$("000"+(right$(a$,len(a$)-1)),3);
  97. 970 x=fre(.):return
  98. 980 rem random location in time
  99. 990 hx=int((rnd(1)*44)+1):return
  100. 1000 rem title
  101. 1010 print"[147]"tab(4)"every second counts aboard the..."
  102. 1020 printtab(12)"[176][178][174] [178] [176][174][176][174] [178][195][174]"
  103. 1030 printtab(12)"[155] [194]  [194] [194][173][189][194] [171][179] "
  104. 1040 printtab(12)"[155] [177]  [177] [177]  [177] [177][195][189]"
  105. 1050 printtab(10)"[152][176][195][174][178] [178][178][195][174][178]  [178][176][195][174][174] [176]"
  106. 1060 printtab(10)"[151][173][195][174][194] [194][171][195][179][194][176][174][194][171][195][179][173][178][189]"
  107. 1070 printtab(10)"[151][173][195][189][173][195][189][177][195][189][173][189][173][189][177] [177] [177] "
  108. 1080 printtab(12)"[154]please stand by!"
  109. 1090 printtab(4)"[155](c) 1988 cleveland m. blakemore":return
  110. 1100 print"[155]";:forx=.to39:printchr$(183);:next
  111. 1110 print" [213][195][195][195][195][195][201] [213][195][195][195][195][195][201] [213][195][195][195][195][195][201] [213][195][195][195][195][195][201] [152]::::::[155] ";
  112. 1120 print" [202][195][195][195][195][195][203] [202][195][195][195][195][195][203] [202][195][195][195][195][195][203] [202][195][195][195][195][195][203] [152]:[151][176][195][195][174][152]:[155] ";
  113. 1130 print"[151][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][152]:[151][173][195][195][189][152]:[151][178]";
  114. 1140 print"[177][177][177][177][177][177][177][177][177][177][177][177][177][177][177][177][177][177][177][177][177][177][177][177][177][177][177][177][177][177][177][177][177][152]:[151] [215][215] [152]:[151][177]";
  115. 1150 print"[155][176][176][176][176][176][176][176][176][176][176][176][176][176][176][176][176][176][176][176][176][176][176][176][176][176][176][176][176][176][176][176][176][176][152]:[151][210][210][210][210][152]:[155][176]":return
  116. 1160 rem subway platform
  117. 1170 pokev+17,11:poke646,sc(yand3)
  118. 1180 print"[147]";:gosub1230:gosub1240:print"";:gosub1240:gosub1230:forx=.to6
  119. 1190 print"[207][208]"spc(36)"[207][208][208][207]"spc(36)"[208][207]";:next:gosub1230:print"[157]";:gosub1230
  120. 1200 poke2023,208:print"";:gosub1100
  121. 1210 syspl,34,13:print"[158][161][151][176][195][174][157][157][157][157][158][161][151][194]i[194][157][157][157][157][158][161][151][194]n[194][157][157][157][157][158][161][151][194]f[194][157][157][157][157][158][161][151][194]o[194]";
  122. 1220 print"[157][157][157][157][158][161][151][173][195][189]":syspl,17,8:print"      ":pokev+17,27:return
  123. 1230 forx=.to19:print"[207][208]";:next:return
  124. 1240 forx=.to19:print"[208][207]";:next:return
  125. 1250 rem setup crowd